home *** CD-ROM | disk | FTP | other *** search
/ STraTOS 1997 April & May / STraTOS 1 - 1997 April & May.iso / CD01 / PRGMANIA / @FALCON / VISUAL41 / GUW_DEF.S < prev    next >
Encoding:
Text File  |  1997-02-16  |  18.2 KB  |  382 lines

  1. *----------------  Structure of the Main Application Object  --------------*
  2.     rsreset
  3.  
  4. GWVA_APP_OBJ_FLAGS:        rs.b 1
  5.     ; bit 0 : (0) le ressource doit être chargé, (1) il est en mémoire
  6.     ; bit 1 : (0) un seul ressource (1) liste de ressorces en fonction de la resolution
  7.     ; bit 2 : (0) pas de background (1) image de fond si APP
  8.     ; bit 3 : (0) background normal (1) centrage auto de l'objet 1
  9.     ; bit 4 : (0) pas de menu principal (1) le menu principal doit etre geré par le VA
  10. GWVA_APP_OBJ_STATUS:        rs.b 1
  11.     ; bit 0 : (0) application non iconifiée (1) iconifiée
  12.  
  13. GWVA_APP_OBJ_TSR_SIZE:        rs.l 1    ; longueur à sauvegarder (page de base y compris) pour les TSR, 0.l si pas TSR
  14. GWVA_APP_OBJ_REG_NAME:        rs.l 1    ; ptr sur le nom pour le MENU_REGISTER (REG_NEWNAME) (8 caracteres)
  15. GWVA_APP_OBJ_ACC_NAME:        rs.l 1    ; ptr sur le nom pour le MENU_REGISTER
  16. GWVA_APP_OBJ_RSC_INFO:        rs.l 1    ; ptr soit sur le path-name soit sur l'adresse du ressource,
  17.                 ; ou bien sur un liste de ptr pour chaque nbre de coul. : 2, 4, 16, 256, pas de palette (5*1.L)
  18.                 ; 0.l si pas de ressource
  19. GWVA_APP_OBJ_BACKGROUND_WIND_PTR:    rs.l 1    ; pointeur sur un objet fenetre
  20. GWVA_APP_OBJ_MAIN_MENU_PTR:    rs.l 1    ; 0.l si pas de menu ou 1 pointeur sur une structure menu (GWVA_MENU_STRUCT)
  21. GWVA_APP_OBJ_ALL_ICON_PTR:    rs.l 1    ; ptr sur une structure de fenêtre
  22.  
  23. GWVA_APP_OBJ_M1FLAG:        rs.w 1    ; entrée de zone (0) sortie (1)
  24. GWVA_APP_OBJ_M1X:        rs.w 1    ; position et taille de la zone (<> 0 pour être actif)
  25. GWVA_APP_OBJ_M1Y:        rs.w 1
  26. GWVA_APP_OBJ_M1W:        rs.w 1
  27. GWVA_APP_OBJ_M1H:        rs.w 1
  28. GWVA_APP_OBJ_M2FLAG:        rs.w 1    ; entrée de zone (0) sortie (1)
  29. GWVA_APP_OBJ_M2X:        rs.w 1    ; position et taille de la zone
  30. GWVA_APP_OBJ_M2Y:        rs.w 1
  31. GWVA_APP_OBJ_M2W:        rs.w 1
  32. GWVA_APP_OBJ_M2H:        rs.w 1
  33. GWVA_APP_OBJ_COUNT:        rs.l 1    ; valeur du timer (<> 0 pour être actif)
  34.  
  35. GWVA_APP_OBJ_CUSTOM_INITS:    rs.l 1    ; initialisation perso avant la boucle GEM d'attente
  36.  
  37.  ; A suivre tous les évènements que peut recevoir l'objet 'application'
  38. GWVA_APP_OBJ_AC_OPEN:        rs.l 1
  39. GWVA_APP_OBJ_AC_CLOSE:        rs.l 1
  40. GWVA_APP_OBJ_AP_TERM:        rs.l 1
  41. GWVA_APP_OBJ_AP_TFAIL:        rs.l 1
  42. GWVA_APP_OBJ_SHUT_COMPLETED:    rs.l 1
  43. GWVA_APP_OBJ_RESCH_COMPLETED:    rs.l 1
  44. GWVA_APP_OBJ_AP_DRAG_DROP:    rs.l 1
  45. GWVA_APP_OBJ_SH_WDRAW:        rs.l 1
  46. GWVA_APP_OBJ_CH_EXIT:        rs.l 1
  47. GWVA_APP_OBJ_ALL_OTHER:        rs.l 1
  48.  
  49. GWVA_APP_OBJ_EVNT_KEYBD:    rs.l 1
  50. GWVA_APP_OBJ_EVNT_BUTTON:    rs.l 1
  51. GWVA_APP_OBJ_EVNT_MOUSE1:    rs.l 1
  52. GWVA_APP_OBJ_EVNT_MOUSE2:    rs.l 1
  53. GWVA_APP_OBJ_EVNT_TIMER:    rs.l 1
  54.  
  55. *-------------------  Structure of The Menu Objects  ----------------------*
  56.     rsreset
  57.  
  58. GWVA_MENU_STRUCT_INDEX:        rs.w 1    ; Index du tree du menu dans le ressource
  59. GWVA_MENU_STRUCT_PTR:        rs.l 1    ; pointeur sur le tree du menu dans le ressource
  60. GWVA_MENU_STRUCT_SCROLL_INDEX:    rs.w 1    ; nombre de titre décalé (0 pour le menu complet)
  61. GWVA_MENU_STRUCT_LIST_ATTACH_PTR:    rs.l 1    ; 0.l si aucun sous menu ou 1 ptr sur un tableau de pointeurs sur des structures GWVA_SUB_MENU terminé par 0.l
  62. GWVA_MENU_STRUCT_START_LIST:    rs.w 0
  63.     ; 1.w : numéro du menu
  64.     ; 1.w ; le shortcut éventuel (0 si pas)
  65.     ;  1.b pour le masque de bits des touches spéciales
  66.     ;  bit 0=Rshift, bit 1=Lshift, bit 2=Ctrl, bit 3=Alt
  67.     ;  1.b pour le scan-code US !!! sera converti en langue locale
  68.     ; 1.l : poiteur sur la routine associée
  69.     ; -1.w à la fin
  70.     ; retour :    d0=Top menu sélectionné
  71.     ;    d1=Menu-item Idx
  72.     ;    d2=Menu Idx
  73.     ;    a0=Tree ad.
  74.  
  75.     ; CTRL : dc.w MNU_DESK_INFO,$00*256+'i'-'a'+1; Ctrl - a
  76.     ; ALT  : dc.w MNU_FILE_WIND,$08*256+'a'    ; Alt - a
  77.     ; Prendre son copain dium
  78.     ; regarder l'ikbd.w donné pour cette combinaison sans shift
  79.     ; si l'octet bas est non nul : valeur ASCII : on se fout des touches spé
  80.     ; s'il est nul, c'est un scancode alors, en plus des touches spé :
  81.     ; 1) si la touche correspond à quelquechose d'ASCII, le mettre
  82.     ; 2) sinon, (par ex. F1) mettre le scancode +$80
  83.     ; dès que l'on a pas $80+..., le masque de touches spé est indifférent
  84.     ; Pas de shortcut utilisant Alt et une touche strictement à droite de 8
  85.  
  86.     rsreset
  87. GWVA_SUB_MENU_TREE_OBJ_ATTACHED:    rs.w 1    ; Menu Tree contenant le menu auquel on veut attacher un sous menu
  88. GWVA_SUB_MENU_OBJ_IDX_ATTACHED:    rs.w 1    ; Index du menu auquel on va attacher un sous menu
  89. GWVA_SUB_MENU_TREE:        rs.w 1    ; Index du tree qui contient le dessin du sous menu
  90. GWVA_SUB_MENU_INDEX:        rs.w 1    ; Index du dessin père dans le ressource
  91. GWVA_SUB_MENU_WHICH_ALIGN:    rs.w 1    ; Quel fils du père ci-dessus doit être aligné avec le menu de départ
  92. GWVA_SUB_MENU_SCROLL:        rs.w 1    ; Scrollable ? (0) non (1) oui
  93. GWVA_SUB_MENU_STRUCT_START_LIST:    rs.w 0
  94.     ; 1.w : numéro du menu
  95.     ; 1.w ; le shortcut éventuel (0 si pas)
  96.     ;  1.b pour le masque de bits des touches spéciales
  97.     ;  bit 0=Rshift, bit 1=Lshift, bit 2=Ctrl, bit 3=Alt
  98.     ;  1.b pour le scan-code US !!! sera converti en langue locale
  99.     ; 1.l : poiteur sur la routine associée
  100.     ; -1.w à la fin
  101.     ; retour :    d0=Top menu sélectionné
  102.     ;    d1=Menu-item Idx
  103.     ;    d2=Menu Idx
  104.     ;    a0=Tree ad.
  105.  
  106.     rsreset        ; structure des shortcuts des menus et sous-menus
  107. GWVA_MENU_OBJ_DEF_OBJ_NUM:    rs.w 1    ; numéro du menu
  108. GWVA_MENU_OBJ_DEF_OBJ_SHORTCUT:    rs.w 1    ; le shortcut éventuel (0 si pas)
  109. GWVA_MENU_OBJ_DEF_OBJ_PTR:    rs.l 1    ; poiteur sur la routine associée
  110. GWVA_MENU_SHORCUT_STRUCT_LENGTH:    rs.w 0
  111.     ; fin par -1.w
  112.  
  113. *-------------------  Structure of the Window Objects  --------------------*
  114.     rsreset
  115.  
  116. GWVA_WIND_OBJ_FATHER_PTR:    rs.l 1    ; 0.l si pas d'objet père
  117. GWVA_WIND_OBJ_NEXT_BROTHER_PTR:    rs.l 1    ; 0.l si pas d'objet frère
  118. GWVA_WIND_OBJ_FIRST_SON_PTR:    rs.l 1    ; 0.l si pas d'objet fils
  119.  
  120. GWVA_WIND_OBJ_FLAGS:        rs.w 1    ; same as GEM bits
  121.     ; 0 : name
  122.     ; 1 : close
  123.     ; 2 : full
  124.     ; 3 : move
  125.     ; 4 : info
  126.     ; 5 : size
  127.     ; 6 : up arrow     7 : down arrow     8 : v slide
  128.     ; 9 : left arrow    10 : right arrow    11 : h slide
  129.     ;14 : smaller
  130.  
  131. GWVA_WIND_OBJ_STATUS:        rs.w 1
  132.     ; 0 : GWVA_WIN_BIT_FULL     : 1=fulled
  133.     ; 1 : GWVA_WIN_BIT_OPEN     : 0=closed, 1=opened
  134.     ; 2 : GWVA_WIN_BIT_CURS     : 1=curseur du champ éditable affiché
  135.     ; 3 : GWVA_WIN_BIT_ICON        : 1=iconified
  136.     ; 4 : GWVA_WIN_BIT_NAMIFIED : 1=window reduced to a title (and info)
  137.     ; 5 : GWVA_WIN_BIT_FOCUSED  : 1=window has the focus
  138.     ; 6 : Reserved, must be 0
  139.     ; 7 : Reserved, must be 0
  140.     ; 8-15 : Free for user
  141.  
  142. GWVA_WIND_OBJ_PROPERTIES:    rs.w 1
  143.     ; 0 : GWVA_WIN_BIT_HIDETREE : 1=toolbar will not be taken into account
  144.     ; 1 : GWVA_WIN_BIT_AMENU    : 1=window has got a menu atached
  145.     ; 2 : GWVA_WIN_BIT_CTRLC    : 1=supports CTRL+C
  146.     ; 3 : GWVA_WIN_BIT_CTRLV    : 1=supports CTRL+V
  147.     ; 4 : GWVA_WIN_BIT_CTRLX    : 1=supports CTRL+X
  148.     ; 5 : Reserved, must be 0
  149.     ; 6 : Reserved, must be 0
  150.     ; 7 : Reserved, must be 0
  151.     ; 8 : GWVA_WIN_BIT_COPYXY   : 1=automatically copy window current_x,y to first_x,y when closed
  152.     ; 9 : GWVA_WIN_BIT_AUTODEL  : 1=automatically delete window when closed
  153.     ;10 : GWVA_WIN_BIT_FREEPTR1 : 1=automatically MFREE USER_PTR1 if window deleted
  154.     ;11 : GWVA_WIN_BIT_FREEPTR2 : 1=automatically MFREE USER_PTR2 if window deleted
  155.     ;12 : GWVA_WIN_BIT_FREEDATA : 1=automatically MFREE DATA_PTR  if bitmap window deleted
  156.     ;13 : GWVA_WIN_BIT_FREEPAL  : 1=automatically MFREE PAL_PTR   if bitmap window deleted
  157.     ;14 : GWVA_WIN_BIT_FREEFORM : 1=automatically MFREE CLONE_FORM_SAVE if form window deleted
  158.     ;15 : GWVA_WIN_BIT_FREETOOL : 1=automatically MFREE CLONE_FORM_SAVE if toolbar clone window deleted
  159.  
  160. GWVA_WIND_OBJ_TOPABLE_STATE:    rs.w 1    ; increment to make it untop, decrement to restore original state
  161.                 ; decrement to make it ununtop, increment to restore original state (0 at startup)
  162. GWVA_WIND_OBJ_NAME:        rs.l 1    ; ptr sur nom
  163. GWVA_WIND_OBJ_INFO:        rs.l 1    ; ptr sur l'info
  164. GWVA_WIND_OBJ_ICON_WIND_PTR:    rs.l 1    ; ptr sur une structure fenêtre
  165.  
  166. GWVA_WIND_OBJ_MENU_SPEC_PTR:    rs.l 1    ; ptr sur l'objet menu (GWVA_MENU_STRUCT)
  167. GWVA_WIND_OBJ_MENU_HEIGHT:    rs.w 1    ; hauteur du menu 0.w si aucun
  168. GWVA_WIND_OBJ_KEY_TABLE:    rs.l 1    ; ptr sur une table de touches & routines associées 0.l si aucune
  169.     ; 1 word type de raccourci (0 normal, 1=ctrl+C, 2=ctrl+V, 3=ctrl+X)
  170.     ; 1 word shortcut
  171.     ; 1 long pointeur sur la routine
  172.     ; fin par -1.w
  173.  
  174. GWVA_WIND_OBJ_FOCUSED_OBJECT:    rs.w 1    ; numéro de l'objet ayant le focus en premier (-1 sinon)
  175. GWVA_WIND_OBJ_FOCUSED_OBJ_CURSOR_POS:rs.w 1    ; position du curseur (recalculée par le V.A.)
  176.  
  177. ;<<< Ces valeurs ne sont pas modifiées par le VISUAL
  178. GWVA_WIND_OBJ_FIRST_DX:        rs.w 1    ; position externe de la fenêtre relativement à l'écran pour la fenêtre, 
  179. GWVA_WIND_OBJ_FIRST_DY:        rs.w 1    ; relative à la fenêtre la contenant pour la toolbar (-32768 pour centrer)
  180. GWVA_WIND_OBJ_FIRST_W:        rs.w 1    ; (interne) en unité de la fenêtre
  181. GWVA_WIND_OBJ_FIRST_H:        rs.w 1    ; carac ou pixels (TAILLE MINIMALE 64 PIXELS*?)
  182. ;>>>
  183. GWVA_WIND_OBJ_INTERNAL_MAX_W:    rs.w 1    ; (interne) en pixels si bitmap fixé par taille de l'image
  184. GWVA_WIND_OBJ_INTERNAL_MAX_H:    rs.w 1    ; si wind_text, fixé par nb col,ligne : sera recalculé en pixel
  185.     ; n'est pas comptée la hauteur du menu
  186.     ; si l'unité est le caractère, ils seront calculés à l'init
  187.     ; tous seront de toute façon vérifiés à l'init, sauf pour les CUSTOM et les UNDEF
  188.  
  189. GWVA_WIND_OBJ_GEM_HANDLE:    rs.w 1
  190.     ; handle gem, mettre -1 au début
  191.     ; s'il y a -1 ici c'est que la fenêtre n'existe pas !
  192.  
  193. GWVA_WIND_OBJ_INTERNAL_DX:    rs.w 1    ; position du coin supérieur gauche interne de la fenêtre
  194. GWVA_WIND_OBJ_INTERNAL_DY:    rs.w 1    ; par rapport à sa mère (par rapport au bureau pour la fenêtre racine), décalé du menu
  195. GWVA_WIND_OBJ_INTERNAL_W:    rs.w 1    ; taille interne courante de la fenêtre, moins le menu
  196. GWVA_WIND_OBJ_INTERNAL_H:    rs.w 1
  197.  
  198. GWVA_WIND_OBJ_SLIDER_V_POS:    rs.w 1    ; position de 1 à 1000
  199. GWVA_WIND_OBJ_SLIDER_V_SIZE:    rs.w 1    ; taille de 1 à 1000 (-1 : taille minimale)
  200. GWVA_WIND_OBJ_SLIDER_H_POS:    rs.w 1
  201. GWVA_WIND_OBJ_SLIDER_H_SIZE:    rs.w 1
  202.  
  203. GWVA_WIND_OBJ_CONTENTS_DX:    rs.w 1    ; position du coin supérieur gauche du contenu
  204. GWVA_WIND_OBJ_CONTENTS_DY:    rs.w 1    ; par rapport à sa fenêtre
  205.  
  206. GWVA_WIND_OBJ_TYPE:        rs.w 1
  207.     ; 1 : GWVA_WIND_CUSTOM : Window custom sans rien à l'intérieur, juste les bords
  208.     ; 2 : GWVA_WIND_TEXT   : Window TEXT
  209.     ; 3 : GWVA_WIND_FORM   : Window contenant un formulaire
  210.     ; 4 : GWVA_WIND_BITMAP : Window contenant du bitmap
  211.     ; 5 : GWVA_WIND_TYPE_UNDEF : Window sans type (aucun redraw, même USER)
  212.     ; Window contenant une toolbox, faites un formulaire
  213.  
  214. GWVA_WIND_OBJ_SPEC_PTR:        rs.l 1    ; pointeur sur une structure spécifique en fonction du type
  215.  
  216. GWVA_WIND_OBJ_USER_PTR1:    rs.l 1    ; pointeurs user defined
  217. GWVA_WIND_OBJ_USER_PTR2:    rs.l 1
  218.  
  219. GWVA_WIND_OBJ_START_EVNT_LIST:    rs.w 1
  220.     ; liste : 1 word puis le ptr sur la routine correspondante
  221.     ; WM_BEFORE+WM_? est appelé avant l'action et WM_AFTER+WM_? après
  222.     ; ex.:    dc.w WM_BEFORE+WM_CLOSED (pas de WM_TOOLBAR)
  223.     ;    dc.l window_closed
  224.     ;    dc.w -1
  225.  
  226.     rsreset        ; structure de la table de touches associées à la fenetre
  227. GWVA_WIND_OBJ_KEYTABLE_TYPE:    rs.w 1    ; type de raccourci (0 normal, 1=ctrl+C, 2=ctrl+V, 3=ctrl+X)
  228. GWVA_WIND_OBJ_KEYTABLE_SHORTCUT:    rs.w 1    ; shortcut
  229. GWVA_WIND_OBJ_KEYTABLE_PTR:    rs.l 1    ; pointeur sur la routine
  230. GWVA_WIND_KEY_STRUCT_LENGTH:    rs.w 0
  231.     ; fin par -1.w
  232.  
  233.     *-----------------------------------------------------*
  234.  
  235.     rsreset        ; structure de l'objet fenêtre bitmap
  236.  
  237. GWVA_WBITM_OBJ_IMG_WIDTH:    rs.w 1    ; largeur de l'image
  238. GWVA_WBITM_OBJ_IMG_HEIGHT:    rs.w 1    ; hauteur de l'image
  239. GWVA_WBITM_OBJ_DATA_PTR:    rs.l 1    ; pointeur sur le buffer
  240. GWVA_WBITM_OBJ_PAL_PTR:        rs.l 1    ; ptr sur la palette (4/16/256)
  241. GWVA_WBITM_OBJ_NBR_BITPLANES:    rs.w 1    ; nb de plans (1,2,4,8,16)
  242. GWVA_WBITM_OBJ_AFF_DX:        rs.w 1    ; (X,Y) / buffer du pixel dans le coin
  243. GWVA_WBITM_OBJ_AFF_DY:        rs.w 1    ; supérieur gauche
  244.  
  245.     *-----------------------------------------------------*
  246.  
  247.     rsreset        ; structure de l'objet fenêtre texte
  248.  
  249. GWVA_WTEXT_OBJ_NB_COLONNES:    rs.w 1    ; largeur : les deux doivent être (TAILLE MINIMALE 64 PIXELS*?)
  250. GWVA_WTEXT_OBJ_NB_LIGNES:    rs.w 1    ; hauteur : fixés par l'utilisateur et fixent w,h maximal interne
  251. GWVA_WTEXT_OBJ_FNT_SIZE:    rs.w 1    ; taille de la font en pixels
  252. GWVA_WTEXT_OBJ_CELL_WIDTH:    rs.w 1
  253. GWVA_WTEXT_OBJ_CELL_HEIGHT:    rs.w 1
  254. GWVA_WTEXT_OBJ_MALOC:        rs.l 1    ; 0 si rien (pas de LF ni RC stockés)
  255. GWVA_WTEXT_OBJ_CUR_BUF_COL:    rs.w 1
  256. GWVA_WTEXT_OBJ_CUR_BUF_LIGN:    rs.w 1
  257. GWVA_WTEXT_OBJ_CUR_AFF_COL:    rs.w 1
  258. GWVA_WTEXT_OBJ_CUR_AFF_LIGN:    rs.w 1
  259. GWVA_WTEXT_OBJ_BUF_COLONNE:    rs.w 1
  260. GWVA_WTEXT_OBJ_BUF_LIGNE:    rs.w 1
  261. GWVA_WTEXT_OBJ_AFF_COLONNE:    rs.w 1
  262. GWVA_WTEXT_OBJ_AFF_LIGNE:    rs.w 1
  263.  
  264.     ; ?_ERROR_? : la font sélectionnée ?
  265.  
  266.     *-----------------------------------------------------*
  267.  
  268.     rsreset        ; structure de l'objet fenêtre formulaire
  269.  
  270. GWVA_WFORM_OBJ_FORM_IDX:    rs.w 1    ; numéro du tree du formulaire
  271. GWVA_WFORM_OBJ_FORM_PTR:    rs.l 1    ; adresse du formulaire calculée par le visual
  272. GWVA_WFORM_OBJ_CLICK_ROUTINE:    rs.l 1    ; routine pour tout click dans le formulaire ou 0.l
  273. GWVA_WFORM_OBJ_L_SCULPT:    rs.w 1    ; largeur additionnelle à gauche
  274. GWVA_WFORM_OBJ_T_SCULPT:    rs.w 1    ; " en haut
  275. GWVA_WFORM_OBJ_R_SCULPT:    rs.w 1    ; " à droite
  276. GWVA_WFORM_OBJ_B_SCULPT:    rs.w 1    ; " en bas
  277. GWVA_WFORM_OBJ_W_SCULPT:    rs.w 1    ; largeur en tenant compte du 'relief'
  278. GWVA_WFORM_OBJ_H_SCULPT:    rs.w 1    ; hauteur "
  279. GWVA_WFORM_OBJ_IS_CLONE_FORM:    rs.w 1    ; champs de bit disant ce qu'il faut sauver si ce formulaire est un clone ou 0.w si form unique
  280. GWVA_WFORM_OBJ_CLONE_FORM_SAVE:    rs.l 1    ; pointeur sur une sauvegarde du contenu du formulaire
  281. GWVA_WFORM_OBJ_CLONE_MAIN_PTR:    rs.l 1    ; pointeur sur un mot long pointant en permanence sur la structure de la fenêtre clone active
  282. GWVA_WFORM_OBJ_START_OBJ_LIST:    rs.w 1
  283.     ; liste des objets du formulaire.
  284.     ; le numéro de l'objet, son shortcut (0 si non), son type, puis
  285.     ; un pointeur sur sa structure
  286.     ; fin par -1.w
  287.     rsreset
  288. GWVA_WFORM_OBJ_DEF_OBJ_NUM:    rs.w 1
  289. GWVA_WFORM_OBJ_DEF_OBJ_SHORTCUT:    rs.w 1
  290. GWVA_WFORM_OBJ_DEF_OBJ_TYPE:    rs.w 1
  291. GWVA_WFORM_OBJ_DEF_OBJ_PTR_STRUCT:    rs.l 1
  292. GWVA_WFORM_OBJFORMLIST_LENGTH:    rs.w 0
  293.  
  294.     ; Types
  295.     ; 1 : GWVA_FORM_WIND_OBJECT_TEXT         : champs de texte (éditable ou pas)
  296.     ; 2 : GWVA_FORM_WIND_OBJECT_BUTTON        : bouton
  297.     ; 3 : GWVA_FORM_WIND_OBJECT_MENU_POPUP   : menu popup
  298.     ; 4 : GWVA_FORM_WIND_OBJECT_RADIO_BUTTON  : radio bouton
  299.     ;*5 : GWVA_FORM_WIND_OBJECT_ROLL_POPUP   : roll over popup object (direct ptr sur struct du popup associé)
  300.     ;*6 : GWVA_FORM_WIND_OBJECT_ROLL_RADIO_B : roll over radio-button object (direct ptr sur struct du radio associé)
  301.     ;*7 : GWVA_FORM_WIND_OBJECT_PROGRESS_BAR : percent-progress graphic object
  302.     ; 8 : GWVA_FORM_WIND_OBJECT_SLIDER         : Objet slider
  303.  
  304.     ;*  = pas d'évènements
  305.  
  306.     ; un bouton exit ou touchexit sera redessiné déselectionné
  307.     ; s'il est enfoncé
  308.  
  309.     rsreset        ; structure de l'objet texte
  310. GWVA_FORM_TXT_OBJ_START_EVNT_LIST:    rs.w 1
  311.     ; les listes d'évènements sont : 
  312.     ; l'évènement.w puis le pointeur sur la routine.
  313.     ; -1 à la fin
  314.  
  315.     rsreset        ; structure de l'objet bouton
  316. GWVA_FORM_BTON_OBJ_STATE:    rs.w 1
  317. GWVA_FORM_BTON_OBJ_START_EVNT_LIST:    rs.w 1
  318.     ; les listes d'évènements sont : 
  319.     ; l'évènement.w puis le pointeur sur la routine.
  320.     ; -1 à la fin
  321.     ; retour :    a0=ptr fenêtre
  322.     ;    a1=ptr formulaire
  323.     ;    a2=ptr structure évènement (ptr sur obj dans la liste des objets)
  324.     ;    a3=ptr obj bouton
  325.     ;    d0=No objet du formulaire clické qui a entrainé l'activation du popup
  326.     ;    d1=état du bouton (bit 0 : selected?)
  327.  
  328.     rsreset        ; structure de l'objet popup
  329. GWVA_FORM_POP_OBJ_TREE_FORM:    rs.w 1    ; numéro de l'arbre (formulaire contenant le popup)
  330. GWVA_FORM_POP_OBJ_FORM_IDX:    rs.w 1    ; numéro de l'objet qui sera le popup
  331. GWVA_FORM_POP_OBJ_SELECTION:    rs.w 1    ; numéro de l'objet sélectionné (à initialiser par le user)
  332. GWVA_FORM_POP_OBJ_CHANGE_ROUTINE:    rs.l 1    ; ptr sur la routine CHANGED (0 si aucune)
  333.     ; retour :    a0=ptr fenêtre
  334.     ;    a1=ptr formulaire
  335.     ;    a2=ptr structure évènement (ptr sur obj dans la liste des objets)
  336.     ;    a3=ptr obj popup
  337.     ;    d0=No objet du formulaire clické qui a entrainé l'activation du popup
  338.     ;    d1=nouvelle sélection
  339.     ;    d2=ancienne sélection
  340.  
  341.     rsreset        ; structure de l'objet radio-bouton
  342. GWVA_FORM_RADIO_OBJ_SELECTION:    rs.w 1    ; numéro de l'objet sélectionné (à initialiser par le user)
  343. GWVA_FORM_RADIO_OBJ_CHANGE_ROUTINE:    rs.l 1    ; ptr sur la routine CHANGED (0 si aucune)
  344.     ; retour :    a0=ptr fenêtre
  345.     ;    a1=ptr formulaire
  346.     ;    a2=ptr structure évènement (ptr sur obj dans la liste des objets)
  347.     ;    a3=ptr obj radio-bouton
  348.     ;    d0=nouvelle sélection
  349.     ;    d1=ancienne sélection
  350.  
  351.     rsreset        ; structure de l'objet percent-progress
  352. GWVA_FORM_PROGRESS_OBJ_PERCENT:    rs.w 1    ; pourcentage 0 <= percent <= 100 sinon infini "oo"
  353. GWVA_FORM_PROGRESS_OBJ_TEXT_IDX:    rs.w 1    ; Index du texte ASCII ou 0 si pas
  354. GWVA_FORM_PROGRESS_OBJ_GRAPHIC_FIDX:rs.w 1    ; Index du graphique père fixe contenant l'autre variable (0 si pas)
  355. GWVA_FORM_PROGRESS_OBJ_GRAPHIC_SIDX:rs.w 1    ; Index du graphique dont la taille va varier de 0 à celle du père
  356.  
  357.     rsreset        ; structure de l'objet slider
  358. GWVA_FORM_SLIDER_OBJ_POS:    rs.l 1    ; Position du coulisseau (en nombre d'élément : 0 -> (LENGTH-SIZE)
  359. GWVA_FORM_SLIDER_OBJ_SIZE:    rs.l 1    ; Nombre d'éléments représentant le coulisseau (une page)
  360. GWVA_FORM_SLIDER_OBJ_LENGTH:    rs.l 1    ; Nombre d'éléments représentant la glissière
  361. GWVA_FORM_SLIDER_OBJ_ORIENT:    rs.w 1    ; Direction du slider (0 horizontal, 1 vertical)
  362. GWVA_FORM_SLIDER_OBJ_GRAPHIC_FIDX:    rs.w 1    ; Index du graphique de la glissière
  363. GWVA_FORM_SLIDER_OBJ_GRAPHIC_SIDX:    rs.w 1    ; Index du graphique du coulisseau en lui même
  364. GWVA_FORM_SLIDER_OBJ_GRAPHIC_P1_IDX:rs.w 1    ; Index de l'objet provoquant l'addition d'1 élement (0 si pas)
  365. GWVA_FORM_SLIDER_OBJ_GRAPHIC_M1_IDX:rs.w 1    ; Index de l'objet provoquant la soustraction d'1 élement (0 si pas)
  366. GWVA_FORM_SLIDER_OBJ_GRAPHIC_P1P_IDX:rs.w 1    ; Index de l'objet provoquant l'addition d'1 page (0 si pas)
  367. GWVA_FORM_SLIDER_OBJ_GRAPHIC_M1P_IDX:rs.w 1    ; Index de l'objet provoquant la soustraction d'1 page (0 si pas)
  368. GWVA_FORM_SLIDER_OBJ_CHANGE_ROUTINE:rs.l 1    ; ptr sur la routine CHANGED (0 si pas)
  369.     ; retour :    a0=ptr fenêtre
  370.     ;    a1=ptr formulaire
  371.     ;    a2=ptr structure évènement (ptr sur obj dans la liste des objets)
  372.     ;    a3=ptr obj slider
  373.     ;    d0.l=nouvelle position du slider
  374.     ;    d1.l=déplacement effectué (signé)
  375.  
  376. *-------------- Structure commune pour la recherche des shortcuts ---------*
  377.     rsreset    ; structure commune pour les shortcuts des menus et sous-menus, des tables
  378.         ; associées au fenetre et des listes d'objet (pour GWVA_CONVERT_KC_IN_OBJECT_IDX)
  379. GWVA_APP_OBJ_MENUWIND_NUM:    rs.w 1    ; numéro d'objet (menu, objet formulaire) ou type de touche
  380. GWVA_APP_OBJ_MENUWIND_SHORTCUT:    rs.w 1    ; le shortcut éventuel (0 si pas)
  381. *--------------------------------------------------------------------------*
  382.